From: Colin Walters Date: Fri, 21 Aug 2009 00:03:28 +0000 (-0400) Subject: [appDisplay] Always relaunch application on drag and drop X-Git-Tag: archive/raspbian/50.5-1+rpi1~1^2~1013^2^2~11030 X-Git-Url: https://dgit.raspbian.org/%22http://www.example.com/cgi/%22/%22http:/www.example.com/cgi/%22?a=commitdiff_plain;h=7465338ea1d501c996614ce7894ed6c247d107b6;p=gnome-shell.git [appDisplay] Always relaunch application on drag and drop Rather than just launching if we weren't already running, always relaunch, which happens to make Firefox, etc. work. See the comment in the commit for more explanation. --- diff --git a/js/ui/appDisplay.js b/js/ui/appDisplay.js index dcd61524f..7930f5d72 100644 --- a/js/ui/appDisplay.js +++ b/js/ui/appDisplay.js @@ -540,12 +540,15 @@ WellDisplayItem.prototype = { }, shellWorkspaceLaunch : function() { - if (this._windows.length == 0) { - this.appInfo.launch(); - } else { - // We should open a new window for the app here, once we know - // how to do that. - } + // Here we just always launch the application again, even if we know + // it was already running. For most applications this + // should have the effect of creating a new window, whether that's + // a second process (in the case of Calculator) or IPC to existing + // instance (Firefox). There are a few less-sensical cases such + // as say Pidgin, but ideally what we do there is have the app + // express to us that it doesn't do relaunch=new-window in the + // .desktop file. + this.appInfo.launch(); }, getDragActor: function(stageX, stageY) {